Wstęp

Wykorzystane biblioteki

Załadowanie i wyświelenie danych, dane są cache’owane

head(data)

Rozmiar zbioru i podsumowanie

print(unique(data$Steps))
[1] 1 2 3 4 5 6
dim(data)
[1] 4351   17

Zbiór danych ma 17 atrybutów i 4351 rekordów.

sum(is.na(data))

Zbiór nie zawiera wartości brakujących.

Krótkie podsumowanie zbioru

column_names  <- names(data)
category_attr <- column_names[1:5]
print(category_attr)
[1] "Battery.ID"        "Battery.Formula"   "Working.Ion"       "Formula.Charge"    "Formula.Discharge"

Zbiór zawiera 10 atrybutów numerycznych i 5 znakowe i 3 kategoryczne.

data %>%
  skim() %>%
  focus(n_missing)
── Data Summary ────────────────────────
                           Values    
Name                       Piped data
Number of rows             4351      
Number of columns          17        
_______________________              
Column type frequency:               
  character                5         
  numeric                  12        
________________________             
Group variables            None      
data %>%
  select(Working.Ion, Max.Delta.Volume:Stability.Discharge) %>%
  group_by(Working.Ion) %>%
  summarise(across(everything(), mean))
NA

Aby wyniki były powtarzalne, należy ustawić seed na stałą wartość.

set.seed(12)

Analiza atrybutów kategorycznych

Na przedstawionym wykresie zaprezentowano rozkład różnych głównych jonów używanych do transportu ładunku w bateriach. Wyraźnie dominuje lit (Li), który występuje znacznie częściej niż inne jony. Sugeruje to powszechne zastosowanie technologii opartych na litowo-jonowych rozwiązaniach, co jest zgodne z ich szerokim wykorzystaniem w przemyśle elektroniki i magazynowania energii. Pozostałe jony, takie jak wapń (Ca), magnez (Mg), i cynk (Zn), również znajdują zastosowanie, ale w znacznie mniejszym zakresie. Obecność jonów takich jak sód (Na) i potas (K) wskazuje na badania nad alternatywami dla litu, jednak ich zastosowanie jest obecnie ograniczone.

Najczęściej występującymi wzorami są MnO2, TiO2, Vo2, CrO2, NiO2, FeO2. Wszystkie zawierają cząsteczkę O2.

ggplot(data, aes(x = Average.Voltage)) +
    geom_density(fill = "skyblue", alpha = 0.5) +
    labs(title = "Density Plot of Max.Delta.Volume",
         x = "Max Delta Volume",
         y = "Density") +
    theme_minimal()


continous_data <- select(data, (Max.Delta.Volume:Stability.Discharge))
  
continous_data                       
for (attr_name in names(continous_data)) {
  p <-  ggplot(continous_data, aes_string(x = attr_name)) +
   geom_histogram(binwidth = 1, fill = "skyblue", color = "black") +
    labs(title = paste("Density Plot of", attr_name),
         x = attr_name,
         y = "Density") +
    theme_minimal()
  print(p)
}               

NA
NA
NA
NA

Korelacja zmiennych

library(corrplot)

number_attr_data <- select(data, (Max.Delta.Volume:Max.Voltage.Step))#Stability.Discharge))

corrplot(cor(number_attr_data),
  method = "number",
  type = "upper",
  tl.cex = 0.8, 
  number.cex = 0.5
)

Najwyższy wspolczynnik koorelacji wystepuje pomiedzy parami atrybutów: - Gravimetric Energy i Volumetric Energy - Gravimetric Capcity i Volumetric Capacity - Stability Charge i Stability Discharge - Gravimetric Capacity i Atomic Fraction Discharge - Average Voltage i Gravimetric Energy

Wizualizacja interaktywnych wykresów pudełkowych

# Sample data frame
# data <- data.frame(Volumetric.Energy = c(...))
library(plotly)
# Create the interactive boxplot
for (attr_name in names(number_attr_data)) {
  p <- plot_ly(
    number_attr_data, 
    y = ~get(attr_name),  # Use get() to refer to the column dynamically
    type = "box",
    boxpoints = "all",
    jitter = 0.3,
    pointpos = -1.8
  ) %>%
    layout(
      title = paste("Boxplot of", attr_name),
      yaxis = list(title = attr_name)
    )

  # Display the plot
  print(p)
}
NA
# Perform ANOVA
#anova_result <- aov(Max.Delta.Volume ~ Battery.Formula, data = data)
#summary(anova_result)

anova_result <- aov(Volumetric.Energy ~ Battery.Formula, data = data)
summary(anova_result)
LS0tDQp0aXRsZTogIlByb2dyYW1vd2FuaWUgdyBSOiBQcm9qZWt0Ig0Kc3VidGl0bGU6ICAgIkFuYWxpemEgYmF6eSBkYW55Y2ggbWF0ZXJpYcWCw7N3IHd5a29yenlzdHl3YW55Y2ggdyB0d29yemVuaXUgYmF0ZXJpaSINCmF1dGhvcjogS2xhdWRpYSBLb3dhbHNrYQ0KZGF0ZTogImByIGZvcm1hdChTeXMudGltZSgpLCAnJWQgJUIgJVknKWAiDQpvdXRwdXQ6IA0KICBodG1sX25vdGVib29rOg0KICAgIHRvYzogdHJ1ZQ0KZWRpdG9yX29wdGlvbnM6IA0KICBjaHVua19vdXRwdXRfdHlwZTogaW5saW5lDQotLS0NCg0KDQojIFdzdMSZcA0KDQpgYGB7ciBnbG9iYWwgb3B0aW9ucywgaW5jbHVkZSA9IEZBTFNFfQ0Ka25pdHI6Om9wdHNfY2h1bmskc2V0KGVjaG89RkFMU0UsIGluY2x1ZGUgPSBGQUxTRSwgd2FybmluZz1GQUxTRSwgbWVzc2FnZT1GQUxTRSkNCmBgYA0KDQojIyBXeWtvcnp5c3RhbmUgYmlibGlvdGVraQ0KYGBge3IgZWNobz1GQUxTRSwgcmVzdWx0cz0naGlkZSd9DQpsaWJyYXJ5KHNraW1yKQ0KbGlicmFyeShjb3JycGxvdCkNCmxpYnJhcnkoR0dhbGx5KQ0KbGlicmFyeShkcGx5cikNCmxpYnJhcnkoIkhtaXNjIikNCmBgYA0KDQpaYcWCYWRvd2FuaWUgaSB3ecWbd2llbGVuaWUgZGFueWNoLCBkYW5lIHPEhSBjYWNoZSdvd2FuZQ0KDQpgYGB7ciBsb2FkIGRhdGEsIGVjaG8gPSBGQUxTRSwgY2FjaGUgPSBUUlVFLCByZXN1bHRzPUZBTFNFfQ0KZGF0YSA8LSByZWFkLmNzdigiRDpcXHN0dWRpYVxcbWFnaXN0ZXJrYVxcWkVEXFxQcm9qZWt0X1JcXG1wX2JhdHRlcmllcy5jc3YiKQ0KYGBgDQoNCmBgYHtyfQ0KaGVhZChkYXRhKQ0KYGBgDQoNCiMjIFJvem1pYXIgemJpb3J1IGkgcG9kc3Vtb3dhbmllIA0KYGBge3J9DQpkaW0oZGF0YSkNCmBgYA0KWmJpw7NyIGRhbnljaCBtYSAxNyBhdHJ5YnV0w7N3IGkgNDM1MSByZWtvcmTDs3cuDQoNCmBgYHtyfQ0Kc3VtKGlzLm5hKGRhdGEpKQ0KYGBgDQoNClpiacOzciBuaWUgemF3aWVyYSB3YXJ0b8WbY2kgYnJha3VqxIVjeWNoLg0KDQojIyMgS3LDs3RraWUgcG9kc3Vtb3dhbmllIHpiaW9ydQ0KDQpgYGB7cn0NCnNraW0oZGF0YSkNCmBgYA0KWmJpw7NyIHphd2llcmEgMTAgYXRyeWJ1dMOzdyBudW1lcnljem55Y2ggaSA1IHpuYWtvd2UgaSAzIGthdGVnb3J5Y3puZS4NCg0KYGBge3J9DQpkYXRhICU+JQ0KICBza2ltKCkgJT4lDQogIGZvY3VzKG5fbWlzc2luZykNCmBgYA0KDQpgYGB7cn0NCmRhdGEgJT4lDQogIHNlbGVjdChXb3JraW5nLklvbiwgTWF4LkRlbHRhLlZvbHVtZTpTdGFiaWxpdHkuRGlzY2hhcmdlKSAlPiUNCiAgZ3JvdXBfYnkoV29ya2luZy5Jb24pICU+JQ0KICBzdW1tYXJpc2UoYWNyb3NzKGV2ZXJ5dGhpbmcoKSwgbWVhbikpDQoNCmBgYA0KDQoNCkFieSB3eW5pa2kgYnnFgnkgcG93dGFyemFsbmUsIG5hbGXFvHkgdXN0YXdpxIcgc2VlZCBuYSBzdGHFgsSFIHdhcnRvxZvEhy4NCmBgYHtyfQ0Kc2V0LnNlZWQoMTIpDQpgYGANCg0KIyMjIEFuYWxpemEgYXRyeWJ1dMOzdyBrYXRlZ29yeWN6bnljaA0KYGBge3IgZWNobyA9IEZBTFNFfQ0Kd29ya2luZ19pb25fc3VtbWFyeSA8LSBkYXRhICU+JQ0KICBncm91cF9ieShXb3JraW5nLklvbikgJT4lDQogIHN1bW1hcmlzZSh0b3RhbCA9IG4oKSkNCndvcmtpbmdfaW9uX3N1bW1hcnkNCg0KZGF0YSAlPiUNCiAgZ3JvdXBfYnkoV29ya2luZy5Jb24pICU+JQ0KICBzdW1tYXJpc2UodG90YWxfaW9uID0gbigpKSAlPiUNCiAgZ2dwbG90KCkgKw0KICAgbGFicyh0aXRsZSA9IHBhc3RlKCJSb3prxYJhZCBnxYLDs3dueWNoIGpvbsOzdywga3TDs3JlIG9kcG93aWFkYWrEhSB6YSB0cmFuc3BvcnQgxYJhZHVua3UgdyBiYXRlcmlpIiksDQogICAgICAgICAgIHggPSAiV29ya2luZy5Jb24iLA0KICAgICAgICAgICB5ID0gIkNvdW50IikgKw0KICAgICAgZ2VvbV9iYXIoYWVzKHggPSByZW9yZGVyKFdvcmtpbmcuSW9uLCB0b3RhbF9pb24pLCB5ID0gdG90YWxfaW9uLCBmaWxsID0gV29ya2luZy5Jb24pLCBzdGF0ID0gImlkZW50aXR5IikgKw0KICAgICAgdGhlbWVfbWluaW1hbCgpIA0KYGBgDQpOYSBwcnplZHN0YXdpb255bSB3eWtyZXNpZSB6YXByZXplbnRvd2FubyByb3prxYJhZCByw7PFvG55Y2ggZ8WCw7N3bnljaCBqb27Ds3cgdcW8eXdhbnljaCBkbyB0cmFuc3BvcnR1IMWCYWR1bmt1IHcgYmF0ZXJpYWNoLiBXeXJhxbpuaWUgZG9taW51amUgbGl0IChMaSksIGt0w7NyeSB3eXN0xJlwdWplIHpuYWN6bmllIGN6xJnFm2NpZWogbmnFvCBpbm5lIGpvbnkuIFN1Z2VydWplIHRvIHBvd3N6ZWNobmUgemFzdG9zb3dhbmllIHRlY2hub2xvZ2lpIG9wYXJ0eWNoIG5hIGxpdG93by1qb25vd3ljaCByb3p3acSFemFuaWFjaCwgY28gamVzdCB6Z29kbmUgeiBpY2ggc3plcm9raW0gd3lrb3J6eXN0YW5pZW0gdyBwcnplbXnFm2xlIGVsZWt0cm9uaWtpIGkgbWFnYXp5bm93YW5pYSBlbmVyZ2lpLiBQb3pvc3RhxYJlIGpvbnksIHRha2llIGphayB3YXDFhCAoQ2EpLCBtYWduZXogKE1nKSwgaSBjeW5rIChabiksIHLDs3duaWXFvCB6bmFqZHVqxIUgemFzdG9zb3dhbmllLCBhbGUgdyB6bmFjem5pZSBtbmllanN6eW0gemFrcmVzaWUuIE9iZWNub8WbxIcgam9uw7N3IHRha2ljaCBqYWsgc8OzZCAoTmEpIGkgcG90YXMgKEspIHdza2F6dWplIG5hIGJhZGFuaWEgbmFkIGFsdGVybmF0eXdhbWkgZGxhIGxpdHUsIGplZG5hayBpY2ggemFzdG9zb3dhbmllIGplc3Qgb2JlY25pZSBvZ3Jhbmljem9uZS4NCg0KYGBge3IgZWNobyA9IEZBTFNFfQ0KdW5pcXVlKGRhdGFbIkZvcm11bGEuQ2hhcmdlIl0pDQpmb3JtdWxhX2NoYXJnZV9zdW1tYXJ5IDwtIGRhdGEgJT4lDQogIGdyb3VwX2J5KEZvcm11bGEuQ2hhcmdlKSAlPiUNCiAgc3VtbWFyaXNlKHRvdGFsID0gbigpKSAlPiUNCiAgYXJyYW5nZShkZXNjKHRvdGFsKSkNCmZvcm11bGFfY2hhcmdlX3N1bW1hcnkNCg0KcGVyY2VudGlsZV85OSA8LSBxdWFudGlsZShzZWxlY3QoZm9ybXVsYV9jaGFyZ2Vfc3VtbWFyeSwgdG90YWwpLCBwcm9icyA9IDAuOTksIG5hLnJtID0gVFJVRSkNCmZvcm11bGFfY2hhcmdlX3ZhbHVlc185OV9wZXJjZW50aWxlIDwtIGZvcm11bGFfY2hhcmdlX3N1bW1hcnkgJT4lDQogIGZpbHRlcih0b3RhbCA+PSBwZXJjZW50aWxlXzk5KQ0KDQpmb3JtdWxhX2NoYXJnZV92YWx1ZXNfOTlfcGVyY2VudGlsZQ0KDQpmb3JtdWxhX2NoYXJnZV92YWx1ZXNfOTlfcGVyY2VudGlsZSAlPiUNCiAgZ2dwbG90KCkgKw0KICAgbGFicyh0aXRsZSA9IHBhc3RlKCJXesOzcnkgY2hlbWljem5lIG1hdGVyaWHFgnUgYmF0ZXJpaSB3IHN0YW5pZSBuYcWCYWRvd2FueW0iKSwNCiAgICAgICAgICAgeCA9ICJGb3JtdWxhIENoYXJnZSIsDQogICAgICAgICAgIHkgPSAiQ291bnQiKSArDQogICAgICBnZW9tX2JhcihhZXMoeCA9IHJlb3JkZXIoRm9ybXVsYS5DaGFyZ2UsIHRvdGFsKSwgeSA9IHRvdGFsLCBmaWxsID0gRm9ybXVsYS5DaGFyZ2UpLCBzdGF0ID0gImlkZW50aXR5IiwgIHdpZHRoID0gMC41KSArDQogICAgICB0aGVtZSgNCiAgICAgICAgdGV4dCA9IGVsZW1lbnRfdGV4dChzaXplID0gMTIpLA0KICAgICAgICBheGlzLnRleHQueCA9IGVsZW1lbnRfdGV4dChhbmdsZSA9IDkwLCBoanVzdCA9IDEsIHNpemUgPSA4KQ0KICAgICAgKQ0KYGBgDQpOYWpjesSZxZtjaWVqIHd5c3TEmXB1asSFY3ltaSB3em9yYW1pIHPEhSBNbk8yLCBUaU8yLCBWbzIsIENyTzIsIE5pTzIsIEZlTzIuIFdzenlzdGtpZSB6YXdpZXJhasSFIGN6xIVzdGVjemvEmSBPMi4NCg0KYGBge3J9DQpnZ3Bsb3QoZGF0YSwgYWVzKHggPSBBdmVyYWdlLlZvbHRhZ2UpKSArDQogICAgZ2VvbV9kZW5zaXR5KGZpbGwgPSAic2t5Ymx1ZSIsIGFscGhhID0gMC41KSArDQogICAgbGFicyh0aXRsZSA9ICJEZW5zaXR5IFBsb3Qgb2YgTWF4LkRlbHRhLlZvbHVtZSIsDQogICAgICAgICB4ID0gIk1heCBEZWx0YSBWb2x1bWUiLA0KICAgICAgICAgeSA9ICJEZW5zaXR5IikgKw0KICAgIHRoZW1lX21pbmltYWwoKQ0KYGBgDQoNCmBgYHtyfQ0KDQpjb250aW5vdXNfZGF0YSA8LSBzZWxlY3QoZGF0YSwgKE1heC5EZWx0YS5Wb2x1bWU6U3RhYmlsaXR5LkRpc2NoYXJnZSkpDQogIA0KY29udGlub3VzX2RhdGEgICAgICAgICAgICAgICAgICAgICAgIA0KZm9yIChhdHRyX25hbWUgaW4gbmFtZXMoY29udGlub3VzX2RhdGEpKSB7DQogIHAgPC0gIGdncGxvdChjb250aW5vdXNfZGF0YSwgYWVzX3N0cmluZyh4ID0gYXR0cl9uYW1lKSkgKw0KICAgZ2VvbV9oaXN0b2dyYW0oYmlud2lkdGggPSAxLCBmaWxsID0gInNreWJsdWUiLCBjb2xvciA9ICJibGFjayIpICsNCiAgICBsYWJzKHRpdGxlID0gcGFzdGUoIkRlbnNpdHkgUGxvdCBvZiIsIGF0dHJfbmFtZSksDQogICAgICAgICB4ID0gYXR0cl9uYW1lLA0KICAgICAgICAgeSA9ICJEZW5zaXR5IikgKw0KICAgIHRoZW1lX21pbmltYWwoKQ0KICBwcmludChwKQ0KfSAgICAgICAgICAgICAgIA0KICAgICAgICAgICAgICAgICAgICAgICAgDQoNCg0KYGBgDQojIyBLb3JlbGFjamEgem1pZW5ueWNoDQoNCmBgYHtyfQ0KbGlicmFyeShjb3JycGxvdCkNCg0KbnVtYmVyX2F0dHJfZGF0YSA8LSBzZWxlY3QoZGF0YSwgKE1heC5EZWx0YS5Wb2x1bWU6TWF4LlZvbHRhZ2UuU3RlcCkNCg0KY29ycnBsb3QoY29yKG51bWJlcl9hdHRyX2RhdGEpLA0KICBtZXRob2QgPSAibnVtYmVyIiwNCiAgdHlwZSA9ICJ1cHBlciIsDQogIHRsLmNleCA9IDAuOCwgDQogIG51bWJlci5jZXggPSAwLjUNCikNCmBgYA0KDQpOYWp3ecW8c3p5IHdzcG9sY3p5bm5payBrb29yZWxhY2ppIHd5c3RlcHVqZSBwb21pZWR6eSBwYXJhbWkgYXRyeWJ1dMOzdzoNCi0gR3JhdmltZXRyaWMgRW5lcmd5IGkgVm9sdW1ldHJpYyBFbmVyZ3kNCi0gR3JhdmltZXRyaWMgQ2FwY2l0eSBpIFZvbHVtZXRyaWMgQ2FwYWNpdHkNCi0gU3RhYmlsaXR5IENoYXJnZSBpIFN0YWJpbGl0eSBEaXNjaGFyZ2UNCi0gR3JhdmltZXRyaWMgQ2FwYWNpdHkgaSBBdG9taWMgRnJhY3Rpb24gRGlzY2hhcmdlDQotIEF2ZXJhZ2UgVm9sdGFnZSBpIEdyYXZpbWV0cmljIEVuZXJneSANCg0KDQojIyBXaXp1YWxpemFjamEgaW50ZXJha3R5d255Y2ggd3lrcmVzw7N3IHB1ZGXFgmtvd3ljaA0KDQpgYGB7cn0NCmxpYnJhcnkocGxvdGx5KQ0KDQpmb3IgKGF0dHJfbmFtZSBpbiBuYW1lcyhudW1iZXJfYXR0cl9kYXRhKSkgew0KICBwIDwtIHBsb3RfbHkoDQogICAgbnVtYmVyX2F0dHJfZGF0YSwgDQogICAgeSA9IH5nZXQoYXR0cl9uYW1lKSwNCiAgICB0eXBlID0gImJveCIsDQogICAgYm94cG9pbnRzID0gImFsbCIsDQogICAgaml0dGVyID0gMC4zLA0KICAgIHBvaW50cG9zID0gLTEuOA0KICApICU+JQ0KICAgIGxheW91dCgNCiAgICAgIHRpdGxlID0gcGFzdGUoIkJveHBsb3Qgb2YiLCBhdHRyX25hbWUpLA0KICAgICAgeWF4aXMgPSBsaXN0KHRpdGxlID0gYXR0cl9uYW1lKQ0KICAgICkNCg0KICBwcmludChwKQ0KfQ0KDQpgYGANCg0KDQpgYGB7cn0NCiMgUGVyZm9ybSBBTk9WQQ0KI2Fub3ZhX3Jlc3VsdCA8LSBhb3YoTWF4LkRlbHRhLlZvbHVtZSB+IEJhdHRlcnkuRm9ybXVsYSwgZGF0YSA9IGRhdGEpDQojc3VtbWFyeShhbm92YV9yZXN1bHQpDQoNCmFub3ZhX3Jlc3VsdCA8LSBhb3YoVm9sdW1ldHJpYy5FbmVyZ3kgfiBCYXR0ZXJ5LkZvcm11bGEsIGRhdGEgPSBkYXRhKQ0Kc3VtbWFyeShhbm92YV9yZXN1bHQpDQpgYGANCg0KDQo=